From 023270df7d16b327ddb66ae963dde785f5f32b2b Mon Sep 17 00:00:00 2001 From: robertl Date: Tue, 22 Oct 2002 17:21:12 +0000 Subject: [PATCH] Add unknonw alt support for Cetus. From Ron Parker. --- gpsbabel/cetus.c | 16 +++++++++++++--- gpsbabel/reference/cetus.gpu | 9 +++++++++ gpsbabel/reference/cetus.pdb | Bin 0 -> 1223 bytes gpsbabel/testo | 10 ++++++++++ 4 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 gpsbabel/reference/cetus.gpu create mode 100644 gpsbabel/reference/cetus.pdb diff --git a/gpsbabel/cetus.c b/gpsbabel/cetus.c index eb3a834c2..6034475e0 100644 --- a/gpsbabel/cetus.c +++ b/gpsbabel/cetus.c @@ -113,8 +113,13 @@ data_read(void) rec = (struct record *) pdb_rec->data; wpt_tmp->shortname = xstrdup(rec->ID); wpt_tmp->description = xstrdup(rec->name); - wpt_tmp->position.altitude.altitude_meters = be_read32(&rec->elevation) / 100.0; - + if ( be_read32(&rec->elevation) == -100000000 ) { + wpt_tmp->position.altitude.altitude_meters = unknown_alt; + } + else { + wpt_tmp->position.altitude.altitude_meters = be_read32(&rec->elevation) / 100.0; + } + wpt_tmp->position.longitude.degrees = be_read32(&rec->longitude) / 10000000.0; wpt_tmp->position.latitude.degrees = be_read32(&rec->latitude) / 10000000.0; if (rec->year != 0xff) { @@ -173,7 +178,12 @@ cetus_writewpt(waypoint *wpt) be_write32(&rec->longitude, wpt->position.longitude.degrees * 10000000.0); be_write32(&rec->latitude, wpt->position.latitude.degrees * 10000000.0); - be_write32(&rec->elevation, wpt->position.altitude.altitude_meters * 100.0); + if ( wpt->position.altitude.altitude_meters == unknown_alt ) { + be_write32(&rec->elevation, -100000000); + } + else { + be_write32(&rec->elevation, wpt->position.altitude.altitude_meters * 100.0); + } opdb_rec = new_Record (0, 0, ct++, sizeof(*rec), (const ubyte *)rec); diff --git a/gpsbabel/reference/cetus.gpu b/gpsbabel/reference/cetus.gpu new file mode 100644 index 000000000..0a1905b65 --- /dev/null +++ b/gpsbabel/reference/cetus.gpu @@ -0,0 +1,9 @@ +GC1A37 3609.068N 08667.955W 0000000m The Troll by a182pilot & Famil a +GC1C2B 3599.627N 08662.012W 0000000m Dive Bomber by JoGPS & family a +GC25A9 3603.848N 08664.862W 0000000m FOSTER by JoGPS & Family a +GC2723 3611.218N 08674.177W 0000000m Logan Lighthouse by JoGps & Fa a +GC2B71 3606.408N 08679.052W 0000000m Ganier Cache by Susy1313 a +GC309F 3608.777N 08680.973W 0000000m Shy's Hill by FireFighterEng33 a +GC317A 3605.750N 08689.200W 0000000m GittyUp by JoGPS / Warner Park a +GC317D 3608.280N 08686.728W 0000000m Inlighting by JoGPS / Warner P a +GCEBB 3597.203N 08713.470W 0000000m Mountain Bike Heaven by susy13 a diff --git a/gpsbabel/reference/cetus.pdb b/gpsbabel/reference/cetus.pdb new file mode 100644 index 0000000000000000000000000000000000000000..44018a4559a0529f1479894f4dd7adf052436313 GIT binary patch literal 1223 zcmYdJEh#P5D@aLVzyUZI7_DjiAPuyW!QI)=(bycwfP#>WRE3bD{G1$x zq)LTELkpvV%$)oZ1vLe?#N5oBN|-Y2v}iL!;F-_^BLBevyBdfn&{}6BCxi-@%(7Gk zr~KTc)FP0@Uim=(0xeA=!cqnX(UKWjXW}kyBF0)HQ%6gLwQl~wA+ABlHWK4asD9CE zPRBD*6zRBHkN4Z2k|qep^ija>w+-DGcO0^yUe_FGHe!YJQIJ$Qffaj*19?&W6^@Ay=Me`P7<^h0Dec$l>h($ literal 0 HcmV?d00001 diff --git a/gpsbabel/testo b/gpsbabel/testo index 552d36819..6f5aacc32 100755 --- a/gpsbabel/testo +++ b/gpsbabel/testo @@ -128,6 +128,7 @@ diff reference/paris.wpo ${TMPDIR}/paris.wpo # not verify that the appinfo block was written correctly. However, it does # successfully test for some endianness errors that might otherwise go # unnoticed. +rm -f ${TMPDIR}/magnav.pdb ${TMPDIR}/magnav.gpu ${TMPDIR}/magnavt.gpu ${PNAME} -i geo -f geocaching.loc -o magnav -F ${TMPDIR}/magnav.pdb ${PNAME} -i magnav -f ${TMPDIR}/magnav.pdb -o gpsutil -F ${TMPDIR}/magnav.gpu ${PNAME} -i magnav -f reference/magnav.pdb -o gpsutil -F ${TMPDIR}/magnavt.gpu @@ -137,9 +138,18 @@ diff reference/magnavr.gpu ${TMPDIR}/magnav.gpu # GPSPilot Tracker for PalmOS # This test is eerily similar to the NAV Companion test. In fact, the # converted reference file (magnavr.gpu) is identical. +rm -f ${TMPDIR}/gpspilot.pdb ${TMPDIR}/gpspilot.gpu ${TMPDIR}/gpspil_t.gpu ${PNAME} -i geo -f geocaching.loc -o gpspilot -F ${TMPDIR}/gpspilot.pdb ${PNAME} -i gpspilot -f ${TMPDIR}/gpspilot.pdb -o gpsutil -F ${TMPDIR}/gpspilot.gpu ${PNAME} -i gpspilot -f reference/gpspilot.pdb -o gpsutil -F ${TMPDIR}/gpspil_t.gpu diff ${TMPDIR}/gpspil_t.gpu ${TMPDIR}/gpspilot.gpu diff reference/magnavr.gpu ${TMPDIR}/gpspilot.gpu +# Cetus GPS for PalmOS +# This test is also similar to the NAV Companion test. +rm -f ${TMPDIR}/cetus.pdb ${TMPDIR}/cetus.gpu ${TMPDIR}/cetust.gpu +${PNAME} -i geo -f geocaching.loc -o cetus -F ${TMPDIR}/cetus.pdb +${PNAME} -i cetus -f ${TMPDIR}/cetus.pdb -o gpsutil -F ${TMPDIR}/cetus.gpu +${PNAME} -i cetus -f reference/cetus.pdb -o gpsutil -F ${TMPDIR}/cetust.gpu +diff ${TMPDIR}/cetust.gpu ${TMPDIR}/cetus.gpu +diff reference/cetus.gpu ${TMPDIR}/cetus.gpu -- 2.30.2